home *** CD-ROM | disk | FTP | other *** search
Oberon Text | 1990-08-30 | 4.5 KB | 121 lines | [.Ob./.Ob*] |
- Syntax10.Scn.Fnt
- MODULE MacQuickDraw; (* Macintosh OS Interface Module Michael Franz, 30.08.90 Incomplete Definiton *)
- IMPORT
- TY:= MacTypes, SYSTEM;
- CONST
- (* Transfer Modes *)
- srcCopy*= 0; srcOr*= 1; srcXor*= 2; srcBic*= 3;
- notSrcCopy*= 4; notSrcOr*= 5; notSrcXor*= 6; notSrcBic*= 7;
- patCopy*= 8; patOr*= 9; patXor*= 10; patBic*= 11;
- notPatCopy*= 12; notPatOr*= 13; notPatXor*= 14; notPatBic*= 15;
- (* Colors *)
- blackColor*= 33; whiteColor*= 30;
- Pattern*= ARRAY + 8 OF TY.PackedByte;
- PatPtr*= POINTER + TO Pattern;
- PatAnchor*= RECORD + p*: PatPtr END;
- PatHandle*= POINTER + TO PatAnchor;
- BitMap*= RECORD +
- baseAddr*: TY.Ptr;
- rowBytes*: INTEGER;
- bounds*: TY.Rect
- END;
- Bits16= ARRAY + 16 OF INTEGER;
- Cursor*= RECORD +
- data*, mask*: Bits16;
- hotSpot*: TY.Point
- END;
- CursPtr*= POINTER + TO Cursor;
- CursAnchor*= RECORD + p*: CursPtr END;
- CursHandle*= POINTER + TO CursAnchor;
- PenState*= RECORD +
- pnLoc*, pnSize*: TY.Point;
- pnMode*: INTEGER;
- pnPat*: Pattern
- END;
- Region*= RECORD + (TY.Data)
- rgnSize*: INTEGER;
- rgnBBox*: TY.Rect;
- END;
- RgnPtr*= POINTER + TO Region;
- RgnAnchor*= RECORD + p*: RgnPtr END;
- RgnHandle*= POINTER + TO RgnAnchor;
- Picture*= RECORD +
- picSize*: INTEGER;
- picFrame*: TY.Rect
- END;
- PicPtr*= POINTER + TO Picture;
- PicAnchor*= RECORD + p*: PicPtr END;
- PicHandle*= POINTER + TO PicAnchor;
- Polygon*= RECORD +
- polySize*: INTEGER;
- polyBBox*: TY.Rect;
- polyPoints*: TY.Point
- END;
- PolyPtr*= POINTER + TO Polygon;
- PolyAnchor*= RECORD + p*: PolyPtr END;
- PolyHandle*= POINTER + TO PolyAnchor;
- QDProcs = RECORD +
- textProc, lineProc, rectProc, rRectProc, ovalProc, arcProc, polyProc,
- rgnProc, bitsProc, commentProc, txMeasProc, getPicProc, putPicProc: TY.ProcPtr
- END;
- QDProcsPtr = POINTER + TO QDProcs;
- GrafPort*= RECORD +
- device: INTEGER;
- portBits*: BitMap;
- portRect*: TY.Rect;
- visRgn*, clipRgn*: RgnHandle;
- bkPat*, fillPat*: Pattern;
- pnLoc*, pnSize*: TY.Point;
- pnMode*: INTEGER;
- pnPat*: Pattern;
- pnVis*: INTEGER;
- txFont*, txFace*, txMode*, txSize*: INTEGER; (* txFace: SET OF StyleItem *)
- spExtra*: TY.Fixed;
- fgColor*, bkColor*: LONGINT;
- colrBit*: INTEGER;
- patStretch*: INTEGER;
- picSave*, rgnSave*, polySave*: TY.Handle;
- grafProcs: QDProcsPtr
- END;
- GrafPtr*= POINTER + TO GrafPort;
- Globals* = RECORD +
- (TY.Data) (* QD offsets *) (* Oberon offsets *)
- randSeed*: LONGINT; (* -126 *) (* 0 *)
- screenBits*: BitMap; (* -122 *) (* 4 *)
- arrow*: Cursor; (* -108 *) (* 18 *)
- dkGray*, ltGray*, gray*, black*, white*: Pattern; (* -40, ... -8 *) (* 86, 94, 102, 110, 118 *)
- thePort*: GrafPtr (* 0 *) (* 126 *)
- END;
- GlobalsPtr* = POINTER + TO Globals; (* Initialized to 0(A5) - 126 *)
- globals*: GlobalsPtr;
- PROCEDURE - SetPort*(port: GrafPtr) 0A8H, 073H;
- PROCEDURE - GetPort*(VAR port: GrafPtr) 0A8H, 074H;
- PROCEDURE - SetOrigin*(h: INTEGER; v: INTEGER) 0A8H, 078H;
- PROCEDURE - SetClip*(rgn: RgnHandle) 0A8H, 079H;
- PROCEDURE - GetClip*(rgn: RgnHandle) 0A8H, 07AH;
- PROCEDURE - BackPat*(pat: Pattern) 0A8H, 07CH;
- PROCEDURE - SetCursor*(crsr: Cursor) 0A8H, 051H;
- PROCEDURE - HideCursor*() 0A8H, 052H;
- PROCEDURE - ShowCursor*() 0A8H, 053H;
- PROCEDURE - ObscureCursor 0A8H, 056H;
- PROCEDURE - InvertRect*(r: TY.Rect) 0A8H, 0A4H;
- PROCEDURE - FillRect*(r: TY.Rect; pat: Pattern) 0A8H, 0A5H;
- PROCEDURE - NewRgn*(): RgnHandle 0A8H, 0D8H;
- PROCEDURE - DisposeRgn*(rgn: RgnHandle) 0A8H, 0D9H;
- PROCEDURE - CopyRgn*(srcRgn: RgnHandle; dstRgn: RgnHandle) 0A8H, 0DCH;
- PROCEDURE - SetRectRgn*(rgn: RgnHandle; left: INTEGER; top: INTEGER; right: INTEGER; bottom: INTEGER) 0A8H, 0DEH;
- PROCEDURE - RectRgn*(rgn: RgnHandle;r: TY.Rect) 0A8H, 0DFH;
- PROCEDURE - SectRgn*(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle) 0A8H, 0E4H;
- PROCEDURE - DiffRgn*(srcRgnA: RgnHandle; srcRgnB: RgnHandle; dstRgn: RgnHandle) 0A8H, 0E6H;
- PROCEDURE - EmptyRgn*(rgn: RgnHandle): BOOLEAN 0A8H, 0E2H;
- PROCEDURE - PtInRgn*(pt: TY.Point; rgn: RgnHandle): BOOLEAN 0A8H, 0E8H;
- PROCEDURE - CopyBits(srcBits: BitMap; dstBits: BitMap; srcRect: TY.Rect;
- dstRect: TY.Rect; mode: INTEGER; maskRgn: RgnHandle) 0A8H, 0ECH;
- PROCEDURE - LocalToGlobal*(VAR pt: TY.Point) 0A8H, 070H;
- PROCEDURE - GlobalToLocal*(VAR pt: TY.Point) 0A8H, 071H;
- PROCEDURE - StuffHex*(thingPtr: TY.Ptr; s: TY.Str255) 0A8H, 066H;
- BEGIN
- SYSTEM.GETREG(13, globals); SYSTEM.GET(SYSTEM.VAL(LONGINT, globals), globals); (* Mem[A5] *)
- DEC(SYSTEM.VAL(LONGINT, globals), 126)
- END MacQuickDraw.
-